// // 定义一个缓存数组来存储接收的数据
// let dataBuffer: number[] = [];

// // 假设你已经在蓝牙连接中设置了数据接收的监听器
// wx.onBLECharacteristicValueChange(function (res) {
//   const receivedData = Array.from(res.value;) // 收到的数据

 
//   // 处理完整数据包
//   while (this.receivedData.length >= 4) {
//     // 从缓存数组中取出包头、功能码、数据长度和校验位
//     const packetHeader = this.receivedData[0];
//     const funcCode =this. receivedData[1];
//     const dataLength = this.receivedData[2];
//     const checksum = this.receivedData[3 + dataLength];

//     // 判断是否已经接收到完整的数据包
//     if (this.receivedData.length >= dataLength + 4) {
//       // 提取完整的数据包
//       const completePacket = dataBuffer.slice(0, dataLength + 4);

//       // 处理完整数据包
//       handleCompletePacket(completePacket);

//       // 从缓存数组中移除已经处理的数据包
//       dataBuffer = dataBuffer.slice(dataLength + 4);
//     } else {
//       // 数据包不完整，等待更多数据到达
//       const data = this.receivedData.slice(3, dataLength + 3);
//       dataBuffer = dataBuffer.concat(Array.from(data));
//       break;
//     }
//   }
// });

// function handleCompletePacket(packet) {
//   // 在这里解析数据包，提取功能码、数据等信息
//   const packetHeader = packet[0];
//   const funcCode = packet[1];
//   const dataLength = packet[2];
//   const data = packet.slice(3, 3 + dataLength);
//   const checksum = packet[3 + dataLength];

//   // 进行数据校验，确保包头、数据长度、校验位等都正确
//   // 然后根据功能码进行相应的处理
// }